package mysql8学习.高级.第19章_数据库备份与恢复;

/**
 * 1.使用SELECT .. INTO OUTFILE 导出文本文件
 * 在MySQL中，可以使用 SELECT...INTO OUTFILE 语句将表的内容导出成一个文本文件。
 *
 *  mysql默认对导出的目录有权限限制，也就是说使用命令行进行导出的时候，需要指定目录进行操作。
 *  查询 secure_file_priv 值:
 *   SHOW GLOBAL VARIABLES LIKE '%secure%';
 *
 *   Variable_name                  Value
 *   require_secure_transportI      OFF
 *   secure_file_priv               /var/lib/mysql-files/
 *
 *   参数 secure_file_priv 的可选值和作用分别是:
 *      ●如果设置为empty,表示不限制文件生成的位置,这是不安全的设置;
 *      ●如果设置为一个表示路径的字符串，就要求生成的文件只能放在这个指定的目录，或者它的子目录;
 *      ●如果设置为NULL,就表示禁止在这个MySQL实例上执行 select .. into outfile 操作。
 * (3) 上面结果中显示，secure_file_priv 变量的值为 /var/lib/mysql-files/，
 *      导出目录设置为该目录，SQL语句如下。
 *     SELECT * FROM 表名 INTO OUTFILE '/var/lib/mysql-files/自定义名.txt';
 *
 * 2.使用 mysqldump 命令导出文本文件
 *   举例1:使用mysqldump命令将将 atguigu 数据库中 account 表中的记录导出到文本文件:
 *   mysqldump -u用户名 -p密码 -T " /var/1ib/mysql-files/" atguigu account；
 *   mysqldump命令执行完毕后，在指定的目录/var/lib/mysql-files/
 *   下生成了account.sql和account.txt文件。
 *   打开account.sql文件,其内容包含创建account表的CREATE语句。
 *
 * 3.使用 mysql 命令导出文本文件
 *   举例1:使用mysql语句导出 atguigu 数据中 account 表中的记录到文本文件:
 *   mysql -u用户名 -p密码 --execute="SELECT * FROM account;" atguigu> ” /var/lib/mysql-files/account.txt"
 *
 *  使用 --veritcal 参数将该条件记录分为多行显示:
 *      mysql -u用户名 -p密码 --veritcal --execute="SELECT * FROM account;" atguigu> ” /var/lib/mysql-files/account.txt"
 *  使用 --xml 参数将该条件记录 改为xml文件显示
 *      mysql -u用户名 -p密码 --xml --execute="SELECT * FROM account;" atguigu> ” /var/lib/mysql-files/account.txt"
 */
public class F1_表的导出 {
}
